class Scene:
    def __init__(self, actors=[]) -> None:
        self.actors = actors

    def action(self):
        for actor in self.actors:
            actor.line()


class Actor:
    def line(self):
        print(self.name+':', str(self.says()))


class Customer(Actor):
    def __init__(self) -> None:
        self.name = 'Customer'

    def says(self):
        return "That's one ex-bird!"


class Clerk(Actor):
    def __init__(self) -> None:
        self.name = 'Clerk'

    def says(self):
        return "no it isn't"


class Parrot(Actor):
    def __init__(self) -> None:
        self.name = 'Parrot'

    def says(self):
        return "None"


if __name__ == '__main__':
    scene = Scene([Customer(), Clerk(), Parrot()])
    scene.action()
